Le proprietà presenti all’interno di questa tabella si dividono in due grandi famiglie:
- System: proprietà generali di sistema;
- Mail: proprietà relative alla configurazione del componente utilizzato dalla cloudlet per l’invio delle email.
Proprietà di tipo system #
- WORKGROUP_PATH #
Indica il path a cui si trova il file system della cloudlet.
Required: no
Default:false
- NUMBER_OF_ATTEMPTS_TO_ACQUIRE_LOCKS #
Indica il numero di tentativi che il sistema di gestione della concorrenza effettua per acquisire i lock degli oggetti coinvolti nelle modifiche da persistere prima di effettuare una transazione sul database della cloudlet.
Required: no
Default:20
- MILLIS_BETWEEN_ATTEMPTS_TO_ACQUIRE_LOCKS #
Indica il tempo di attesa per riprovare ad acquisire i lock per persistere le modifiche sul database della cloudlet, a seguito di un fallimento nell’acquisizione.
Required: no
Default:300
- APPLICATION_LOCK_DURATION_MINUTES #
Indica il tempo oltre il quale un lock acquisito da un utente per la modifica o la cancellazione di un oggetto viene automaticamente rilasciato (a meno che l’utente che ha acquisito il lock non lo rilasci in modo esplicito).
Required: no
Default:5
- DATABASE_LOCK_DURATION_MINUTES #
Indica il tempo oltre il quale un lock acquisito da un utente per persistere su database le modifiche relative ad un oggetto viene automaticamente rilasciato.
Required: no
Default:30
- MAX_INACTIVE_SESSION_TIME_MILLIS #
Indica il tempo oltre il quale una sessione lato server su cui non vengono effettuate chiamate viene rimossa.
Required: no
Default:1 hour
- OBJECT_LOCK_REGISTRY_TYPE #
Indica il tipo del registro che viene utilizzato per acquisire i lock all’interno della cloudlet.
In base al valore espresso, la cloudlet utilizzerà un componente in
MEMORY
per gestire lo stato dei lock della cloudlet, oppure un componente che persiste lo stato sulDATABASE
. Quest’ultima implementazione sarà obbligatoria per supportare correttamente il DEPLOYMENT_MODE di tipoMULTIPLE_NODES
.Required: no
Default:MEMORY
- ENABLE_STOP_WATCH #
Impostando questa proprietà a
true
si attivano gli stopwatch inseriti all’interno del framework della cloudlet. Gli stopwatch sono degli oggetti che permettono di tenere traccia del tempo di esecuzione di alcuni servizi critici della cloudlet. Per ogni stopwatch è definito un tempo massimo di esecuzione, oltrepassato il quale viene loggato all’interno della cloudlet il tempo di esecuzione effettivo di quel servizio con un apposito messaggio.Required: no
Default:false
- STOP_WATCH_LOG_MAX_MILLIS #
Indica il tempo massimo di esecuzione di alcuni stopwatch inseriti all’interno del framework della cloudlet, oltrepassato il quale lo stopwatch stesso scriverà nel log il proprio tempo di esecuzione effettivo con un apposito messaggio.
Required: no
Default:500
- HANDLER_LOG_MAX_MILLIS #
Indica il tempo massimo di esecuzione degli stopwatch inseriti all’interno del framework per l’invocazione degli handler della cloudlet; per questi servizi è stato definito un parametro specifico in modo da poter distinguere il log dei tempi di esecuzione dei servizi interni al framework da quello dei servizi inseriti tramite plugin.
Required: no
Default:500
- ENABLE_SLOW_QUERY_LOG #
Impostando questa proprietà a
true
si abilita il log delle slow query. Le query il cui tempo di esecuzione supera il valore indicato nella proprietà SLOW_QUERY_LOG_MAX_MILLIS vengono inserite nel log, insieme allo stacktrace che ne ha portato l’esecuzione.Required: no
Default:false
- SLOW_QUERY_LOG_MAX_MILLIS #
Indica il tempo massimo di esecuzione degli stopwatch inseriti all’interno del framework per l’esecuzione delle query generate. Questo parametro è rilevante solo quando la proprietà ENABLE_SLOW_QUERY_LOG è
true
.Required: no
Default:500
- SQL_DATETIME_TIMEZONE #
Indica la timezone con cui vengono salvati i campi di tipo datetime nel database.
In MariaDB il tipo di dato ‘datetime’ non è time zoned, e sul database viene salvata una rappresentazione stringificata del dato. Questa proprietà indica in qual è la timezone di riferimento con cui interpretare il dato presente sul database.Required: no
Default:GMT
- SQL_IN_PARAM_SIZE_THRESHOLD #
Indica la soglia relativa al numero di elementi in base alla quale una clausola di IN o di NOT IN viene applicata o meno su DB. Per un numero di elementi inferiore o uguale alla soglia, la clausola viene applicata direttamente nella query sul DBMS, per un numero maggiore viene applicata in memoria.
Questo parametro viene preso in considerazione unicamente nelle query generate ed eseguite dall’algoritmo di ottimizzazione attualmente presente nel framework.Required: no
Default:20000
- USE_RUNTIME_QUERY_GENERATOR #
Contiene una stringa comma separated degli identificatori di classe e di ruoli per cui è abilitato l’utilizzo del runtime query generator per l’esecuzione delle query di lettura.
L’identificativo di una classe è dato da
$className
L’identificativo di un ruolo è dato da$parentClassName_$roleName
Required: no
Default:“”
- ATTRIBUTE_LAZY_LOADING #
Quando impostata a
true
, consente di abilitare il caricamento degli attributi in modalità lazy utilizzando il RQG.Required: no
Default:false
- ENABLE_PERFORMANCE_QUERY_LOG #
Consente di abilitare funzionalità di misurazione delle prestazioni della cloudlet.
Required: no
Default:false
Proprietà di tipo mail #
- MAIL_SYSTEM_CLASS #
Serve ad indicare il componente che la cloudlet deve utilizzare per l’invio delle email. Attualmente viene utilizzata per permettere di iniettare un componente mock dell’implementazione reale, spegnendo di fatto l’invio effettivo delle email (utile nelle cloudlet di validazione).
Questa proprietà può avere due valori possibili:
com.fhoster.utils.MailSystem
com.fhoster.utils.DummyMailSystem
Required: no
Sono state aggiunte proprietà custom di Livebase per gestire l’autenticazione SMTP:
- mail.smtp.auth #
- (
Boolean
) Definisce se deve essere utilizzata l’autenticazione o meno. - mail.smtp.auth.username #
- (
String
) Lo username di autenticazione. - mail.smtp.auth.password #
- (
String
) La password dell’SMTP.
Tutte le altre proprietà definibili fanno riferimento a quelle standard utilizzate in java per configurare i componenti per l’invio delle email:
https://javaee.github.io/javamail/docs/api/javax/mail/package-summary.html
https://javaee.github.io/javamail/docs/api/com/sun/mail/smtp/package-summary.html
Esempio di configurazione SMTP Google #
Property | Value |
---|---|
mail.smtp.host | smtp.gmail.com |
mail.smtp.port | 587 |
mail.smtp.auth | true |
mail.smtp.starttls.enable | true |
mail.smtp.auth.username | YOUR_SMPT_USERNAME |
mail.smtp.auth.password | YOUR_SMPT_PASSWORD |